Fingerprint recognition for low computing power applications

ABSTRACT

A method and apparatus are provided for improved fingerprint recognition. A fingerprint image associated with an authorized user can be captured with a sensor. Direction vectors for a plurality of pixels of the first fingerprint image are then calculated. Next, characteristic points of the fingerprint image are located in first coordinate system. The fingerprint central nucleus is determined based on the calculated direction vectors, and is expressed in the first coordinate system. Subsequently, a second coordinate system having an origin located relative to the fingerprint central nucleus is determined. Thereafter, the characteristic points of the fingerprint image are mapped to the second coordinate system. Finally, the fingerprint central nucleus and fingerprint characteristic points expressed in the second coordinate system are saved as a fingerprint template.

CROSS-REFERENCE TO RELATED APPLICATIONS

The instant nonprovisional patent application claims priority toProvisional Application No. 60/894,895 filed Mar. 14, 2007 and which isincorporated by reference in its entirety herein for all purposes.

BACKGROUND OF THE INVENTION

Embodiments of the present invention relate to fingerprint matching, andmore particularly, to a method and apparatus for using a shape functionfor fingerprint recognition.

Fingerprint identification is being more commonly used as way forauthenticating a user in electronic transactions. As opposed to securitypasswords, one's fingerprint is highly unique to a particular individualand does not require memorization. Every fingerprint consists of uniquepatterns that are aggregate characteristics of ridges and minutiapoints.

Generally, fingerprint recognition involves automatically verifying amatch between two fingerprints. In particular, matching algorithms havebeen used to compare recently scanned fingerprints with a previouslystored fingerprint template. In a typical matching algorithm, thefingerprint of an authorized user is initially captured and processed;with the result stored as a fingerprint template. When subsequent accessis requested, a fingerprint image is again captured and processed, butthis time the result is compared with the stored fingerprint template. Amatch authenticates the user and allows the user to proceed with anoperation, while a mismatch blocks further access.

However, the captured fingerprint, even of the same finger, often willvary from time to time, based on finger size, finger position, etc., andtherefore an exact match is not always available. Accordingly,alternative matching techniques and algorithms have been developed.

U.S. Patent Publication No. 2007/0230751 discloses a method forcorrecting distortion caused by fingerprint input sensors. In thisreference, control lines for the distortion caused by an image sensorare designed. Next, an average of the vertical and horizontalresolutions of a fingerprint image is obtained. Based on a ratio ofthese averages, the control lines are modeled in order compensate forthe distortion of the acquired image. Though this algorithm is effectiveat removing sensor image distortion, the stored fingerprint template andthe scanned image can still vary for a specific individual based onfinger position and finger size.

U.S. Patent Publication No. 2007/0253608 discloses a fingerprintmatching algorithm using hash functions. As described in this reference,a set of proximate minutia points are determined from minutia points ofa captured fingerprint image. The set of proximate minutia points arethen subjected to a hash function in order to obtain hash values usedfor subsequent fingerprint matching. An advantage of this algorithm isthe normalization scanned fingerprint images. However, a disadvantage ofthis system is that multiple sets of minutia points must be determinedand transformed for normalization, resulting in increased programmingcode size and processing time. As a result, implementation of such aconfiguration on an integrated circuit (IC) card, which requires smallcode size, would be exceedingly difficult.

Accordingly, there is a need in the art for an efficient and simplefingerprint matching algorithm that is effective for any individual andany fingerprint. Moreover, the fingerprint matching method and systemshould be configured to have a small code size and capable ofimplementation on an IC card.

BRIEF SUMMARY OF THE INVENTION

Embodiments of the present invention disclose a system and method formatching fingerprints. In accordance with one embodiment, a fingerprintimage associated with an authorized user is captured with a sensor.Direction vectors for a plurality of pixels of the first fingerprintimage are then calculated. Next, characteristic points of thefingerprint image are located in a first coordinate system. Thefingerprint central nucleus is determined based on the calculateddirection vectors, and is expressed in the first coordinate system.Subsequently, a second coordinate system having an origin locatedrelative to the fingerprint central nucleus is determined. Thereafter,the characteristic points of the fingerprint image are mapped to thesecond coordinate system. Finally, the fingerprint central nucleus andfingerprint characteristic points expressed in the second coordinatesystem are saved as a fingerprint template.

In another exemplary embodiment, a second fingerprint image associatedwith a user is captured by the sensor. Direction vectors are calculated,and characteristic points for the second fingerprint image are locatedin the first coordinate system. A fingerprint central nucleus of thesecond fingerprint image is determined based on the calculated directionvectors and expressed in the first coordinate system. The characteristicpoints and the fingerprint central nucleus of the second fingerprintimage are then mapped to the second coordinate system used to store thefingerprint template. Lastly, a user is authenticated based on acomparison match between the characteristic points and fingerprintcentral nucleus of the second fingerprint image (as expressed in thesecond coordinate system) with the stored fingerprint template.

The following detailed description together with the accompanyingdrawings will provide a better understanding of the nature andadvantages of the present invention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a simplified block diagram illustrating an overallconfiguration of the system according to an embodiment of the presentinvention.

FIG. 2 is a flowchart illustrating a method for storing a fingerprinttemplate according to an embodiment of the present invention.

FIG. 3 is a flowchart illustrating a method for fingerprint matchingaccording to an embodiment of the present invention.

FIGS. 4( a) and 4(b) are simplified graphs illustrating an example ofthe fingerprint matching algorithm according to an embodiment of thepresent invention.

DETAILED DESCRIPTION OF THE INVENTION

A method and apparatus for using shape functions for fingerprintrecognition is disclosed. The following description is provided toenable any person skilled in the art to make and use the invention andsets forth the best modes contemplated by the inventor for carrying outthe invention. Various modifications will remain readily apparent tothose skilled in the art. Any and all such modifications, equivalentsand alternatives are intended to fall within the spirit and scope of thepresent invention.

FIG. 1 is a simplified block diagram illustrating an overallconfiguration of the system according to an embodiment of the presentinvention. The system 100 includes a fingerprint sensor 102, a centralprocessing unit 104, and a temporary storage unit 106. In oneembodiment, the sensor 102, central processing unit 104, and temporarystorage unit 106 are implemented together on an IC card. Alternatively,the system 100 can be implemented with stand alone components.

In one embodiment, fingerprint sensor 102 is a biometric sensorconfigured to read a fingerprint. When a user places their finger on thesensor, an image of the fingerprint is captured and sent to theprocessing unit 102. Alternatively, the fingerprint sensor can be anoptical, semiconductor, or ultrasound sensor.

Processing unit 104 is configured to process the fingerprint datareceived from the fingerprint sensor. In one embodiment, the processingunit 104 is configured to locate characteristic points and a centralnucleus of the captured fingerprint image in a first coordinate system,and then map the characteristic points and central nucleus to a secondcoordinate system. In addition, the processing unit 104 is configured toperform fingerprint matching based on comparison of a capturedfingerprint image with a stored fingerprint template. A detaileddescription of this process will be described below.

According to one embodiment of the present invention, temporary storageunit 106 is database for storing data. In an exemplary embodiment,temporary storage unit 106 stores fingerprint templates determined byprocessing unit 104.

FIG. 2 is a flowchart illustrating a method for storing a fingerprinttemplate according to an embodiment of the present invention. In step202, a fingerprint image is captured by the fingerprint sensor. In theinitialization stage, the first fingerprint image is the image of a userauthorized to access information. In an IC card implementation, theauthorized user is the card holder.

Following step 202, in step 204, the processing unit automaticallychecks the image quality of the scanned fingerprint image. If theprocessor determines that the image quality is poor, then in step 206noise and like artifacts are removed from the fingerprint image. If theprocessor determines that the image quality is of good quality, then theprocessing unit proceeds to step 208. By automatic applying noisereduction to the fingerprint image prior to mapping, a small programmingcode size can be maintained. This is advantageous over conventionalmethods where substantial image enhancement is executed prior tomatching, thereby increasing code size.

In step 208, the processing unit calculates direction vectors for eachpixel of the fingerprint image. In one embodiment, the direction vectorsare calculated based on the gradient intensity of adjacent pixels. Acomparison of the gradient intensity of adjacent pixels indicates thedirection of a particular pixel vector. In general, the method ofdetermining direction vectors of an image is well known in the art andthe detailed description of which will be omitted.

In step 210, characteristic points, or minutiae, of the fingerprintimage are located in a simple coordinate system such as a Cartesiancoordinate system. In one embodiment, the characteristics points arepoints mapped to a simple system of (x, y) coordinates. Next, in step212 a central nucleus of the fingerprint image is determined based onthe calculated direction vectors. Specifically, the direction vectorsare analyzed to determine the minimum radius of curvature. Thefingerprint central nucleus is then determined as the center point ofadjacent pixels having the minimum radius of curvature.

Following step 212, in step 214, a second coordinate system isdetermined based on the fingerprint central nucleus. In an exemplaryembodiment, the second coordinate system is a polar coordinate systemand points represented in the plane are given by an angle and distancefrom the origin (radius) relative to the fingerprint central nucleus. Inan alternate embodiment, the second coordinate system is a threedimensional coordinate system with the pixel gradient intensity servingas a third coordinate. Moreover, fourth and fifth dimensions can beadded based on the angle of the pixel and gradient color, respectively.The second coordinate system may instead be a spherical or cylindricalcoordinate system. Based on the coordinate system utilized, thecharacteristic points of the fingerprint image expressed in the firstcoordinate system are then mapped to the second coordinate system instep 216. The mapping algorithm for performing this step will bedescribed in detail below. Finally, in step 218, the characteristicpoints and the fingerprint central nucleus expressed in the secondcoordinate system are then saved as a fingerprint template in thedatabase. In an exemplary embodiment, the fingerprint template isassociated with a primary user authorized to use the IC card.

FIG. 3 is a flowchart illustrating a method for fingerprint matchingaccording to an embodiment of the present invention. After a fingerprinttemplate has been saved as described above, fingerprint recognition canbe accomplished as follows. In step 302, a second fingerprint image iscaptured by the fingerprint sensor. The quality of the image isdetermined in step 304, and if the quality is poor, noise and otherartifacts can be automatically removed in step 306. Next, in step 308,direction vectors are calculated for each pixel of the secondfingerprint image as described above. In step 310, characteristic pointsof the second fingerprint image are located in the first coordinatesystem, i.e., a Cartesian coordinate system. Following step 310, in step312 the fingerprint central nucleus of the second fingerprint image isdetermined based upon the calculated direction vectors.

After locating the characteristic points and central nucleus of thesecond fingerprint image, in step 314 these points are then mapped tothe second coordinate system associated with the fingerprint template.Next, in step 316 the characteristic points and the central nucleus ofthe second fingerprint image are then compared with the characteristicpoints and central nucleus of the stored fingerprint template. If amatch is determined between the transformed second fingerprint image andthe fingerprint template in step 318, then in step 320 the user isauthenticated and granted operation access. On the other hand, if amatch is not determined in step 318, then in step 322 the userauthentication fails and the program resets.

Fingerprint Matching Algorithm

FIGS. 4( a) and 4(b) are simplified graphs illustrating an example ofthe fingerprint matching algorithm according to an embodiment of thepresent invention. As shown FIG. 4( a), the fingerprint central nucleusis made the coordinate origin (O). The four closest characteristicpoints (A, B, C, D) from the fingerprint central nucleus are located.FIG. 4( b) shows the four characteristic points mapped to a secondcoordinate system. As shown in this figure, the four characteristicpoints map so as to become a square. After mapping, the position of thefingerprint central nucleus in the center of the square is automaticallycalculated. In one embodiment, fingerprint recognition is carried out bythe position in which the central nucleus exists in this square.

More particularly, the four characteristic point coordinates can beexpressed as (X_(i), Y_(i)) for i=1, 2, 3, 4; the fingerprint centralnucleus can be expressed as (X, Y); and the mapping function is regardedas Ø_(i)=1, 2, 3, 4. Because the characteristic points are mapped to asimple square as shown in FIG. 4( b), the fingerprint central nucleuscan be represented by the following two equations:

X=Σ(X _(i)×Ø_(i))   (Equation 1)

Y=Σ(Y _(i)×Ø_(i))   (Equation 2)

Moreover, Ø may be determined as follows:

Ø₁=0.25×(1−ξ)×(1·η)   (Equation 3)

Ø₂=0.25×(1+ξ)×(1−η)   (Equation 4)

Ø₃=0.25×(1−ξ)×(1·η)   (Equation 5)

Ø₄=0.25×(1·ξ)×(1+η)   (Equation 6)

Equations 1 and 2 are solved for ξ, η, and the resulting solutions for(α, β) become the coordinates of the fingerprint central nucleus in thesecond coordinate system as shown in FIG. 4( b). Solving equations 1 and2 for (ξ, η) makes the equation nonlinear, and solving by an explicitmethod in terms of numerical analysis cannot be done. However, as longas the fingerprint central nucleus and the characteristic points existon the same space, reliably obtaining a convergence solution by animplicit solution method is possible. As such, fingerprint recognitionaccording to embodiments of the present invention is convenientlyobtained by determining where the fingerprint central nucleus exists onthis simple square.

Further embodiments can be envisioned to one of ordinary skill in theart after reading this disclosure. In other embodiments, combinations orsub-combinations of the above disclosed invention can be advantageouslymade. The example arrangements of components are shown for purposes ofillustration and it should be understood that combinations, additions,re-arrangements and the like are contemplated in alternative embodimentsof the present invention. Thus, while the invention has been describedwith respect to exemplary embodiments, one skilled in the art willrecognize that numerous modifications are possible.

1.-18. (canceled)
 19. A system for fingerprint recognition, the systemcomprising: a fingerprint sensor configured to capture a firstfingerprint image; a database remote from and in operative communicationwith the fingerprint sensor configured to store a fingerprint templateassociated with a reference fingerprint image, the fingerprint templateincluding fingerprint template information corresponding to afingerprint central nucleus and fingerprint characteristic points of thereference fingerprint image, the fingerprint template informationfurther including direction vectors calculated for a plurality of pixelsof the reference fingerprint image; and a processor remote from and inoperative communication with the fingerprint sensor configured to: (a)access the fingerprint template information stored at the database; (b)receive the first fingerprint image from the fingerprint sensor; (c)calculate direction vectors for a plurality of pixels of the firstfingerprint image; (d) locate characteristic points of the firstfingerprint image in a first coordinate system; (e) determine afingerprint central nucleus based on the direction vectors of the firstfingerprint image, wherein the fingerprint central nucleus is expressedin the first coordinate system; (f) map the characteristic points andthe fingerprint central nucleus of the first fingerprint image to asecond coordinate system, the second coordinate system having an originlocated relative to the fingerprint central nucleus of the referencefingerprint image; and (g) compare the characteristic points and thefingerprint central nucleus of the first fingerprint image to theaccessed fingerprint template information, the accessed fingerprinttemplate information including the fingerprint central nucleus and thefingerprint characteristic points of the reference fingerprint imageexpressed in the second coordinate system, wherein the fingerprintcentral nucleus of the reference fingerprint image is a center point ofadjacent pixels determined by calculating a minimum radius from aplurality of radii of curvature based on the direction vectors of thereference fingerprint image, the adjacent pixels being adjacent to theminimum radius.
 20. The system of claim 19, wherein the referencefingerprint image is associated with an authorized user.
 21. The systemof claim 19, wherein the fingerprint sensor is implemented on a standalone IC card.
 22. The system of claim 19, wherein the fingerprintsensor is configured to read a fingerprint of a user and is at least oneof: a biometric sensor, an optical sensor, a semiconductor sensor, or anultrasound sensor.
 23. The system of claim 19, wherein the secondcoordinate system is a polar coordinate system representing an angle anda distance from its origin relative to the fingerprint central nucleusof the reference fingerprint image.
 24. The system of claim 19, whereinthe second coordinate system is a multi-dimensional coordinate systemhaving at least three dimensions.
 25. The system of claim 24, whereinone of the at least three dimensions indicates a pixel gradientintensity.
 26. A method for fingerprint recognition, the methodcomprising: accessing a fingerprint template associated with a referencefingerprint image, the fingerprint template including fingerprinttemplate information corresponding to a fingerprint central nucleus andfingerprint characteristic points of the reference fingerprint image,the fingerprint template information further including direction vectorscalculated for a plurality of pixels of the reference fingerprint image;capturing a first fingerprint image with a sensor; calculating directionvectors for a plurality of pixels of the first fingerprint image;locating characteristic points of the first fingerprint image in a firstcoordinate system; determining a fingerprint central nucleus of thefirst fingerprint image based on the direction vectors of the firstfingerprint image, wherein the fingerprint central nucleus of the firstfingerprint image is expressed in the first coordinate system; mappingthe characteristic points and the fingerprint central nucleus of thefirst fingerprint image to a second coordinate system, the secondcoordinate system having an origin located relative to the fingerprintcentral nucleus of the reference fingerprint image; and comparing thecharacteristic points and the fingerprint central nucleus of the firstfingerprint image to the accessed fingerprint template information, theaccessed fingerprint template information including the fingerprintcentral nucleus and the fingerprint characteristic points of thereference fingerprint image expressed in the second coordinate system,wherein the fingerprint central nucleus of the reference fingerprintimage is a center point of adjacent pixels determined by calculating aminimum radius from a plurality of radii of curvature based on thedirection vectors of the reference fingerprint image, the adjacentpixels being adjacent to the minimum radius.
 27. The method of claim 26,wherein the fingerprint characteristic points of the referencefingerprint image are represented in the first coordinate system as(X_(i), Y_(i)), wherein i=1, 2, 3, 4, and wherein the referencefingerprint central nucleus of the reference fingerprint image isrepresented in the first coordinate system as (X, Y).
 28. The method ofclaim 27, wherein the fingerprint central nucleus of the referencefingerprint image is represented in the second coordinate system as (ξ,η), wherein the fingerprint central nucleus of the reference fingerprintimage is determined by solving the following equations for ξ, η:X=Σ(X _(i)×Ø_(i)),Y=Σ(Y _(i)×Ø_(i)),Ø₁=0.25×(1−ξ)×(1·η),Ø₂=0.25×(1+ξ)×(1−η),Ø₃=0.25×(1−ξ)×(1·η),andØ₄=0.25×(1·ξ)×(1+η).
 29. The method of claim 26, further comprisingafter the capturing: verifying the quality of the first fingerprintimage; and based on the verifying, removing image noise from the firstfingerprint image.
 30. The method of claim 26, further comprising:determining that each of the characteristic points and the fingerprintcentral nucleus of the first fingerprint image match with acorresponding one of the characteristic points and central nucleus ofthe reference fingerprint image of the accessed fingerprint information.31. The method of claim 30, further comprising: generating a fingerprintmatch based on determining that each of the characteristic points andthe fingerprint central nucleus of the first fingerprint image matchwith a corresponding one of the characteristic points and centralnucleus of the reference fingerprint image of the accessed fingerprintinformation.
 32. The method of claim 26, wherein the referencefingerprint image is associated with an authorized user.
 33. The methodof claim 26, wherein the second coordinate system is a multidimensionalcoordinate system having at least three dimensions, and wherein one ofthe at least three dimension indicates a pixel gradient density.
 34. Asystem for fingerprint recognition, the system comprising: a fingerprintsensor configured to capture a first fingerprint image; a databaseconfigured to store a fingerprint template associated with a referencefingerprint image, the fingerprint template including fingerprinttemplate information corresponding to a fingerprint central nucleus andfingerprint characteristic points of the reference fingerprint image,the fingerprint template information further including direction vectorscalculated for a plurality of pixels of the reference fingerprint image;and a processor configured to: (a) access the fingerprint templateinformation stored at the database; (b) receive the first fingerprintimage from the fingerprint sensor; (c) calculate direction vectors for aplurality of pixels of the first fingerprint image; (d) locatecharacteristic points of the first fingerprint image in a firstcoordinate system; (e) determine a fingerprint central nucleus based onthe direction vectors of the first fingerprint image, wherein thefingerprint central nucleus is expressed in the first coordinate system;(f) map the characteristic points and the fingerprint central nucleus ofthe first fingerprint image to a second coordinate system, the secondcoordinate system having an origin located relative to the fingerprintcentral nucleus of the reference fingerprint image; and (g) compare thecharacteristic points and the fingerprint central nucleus of the firstfingerprint image to the accessed fingerprint template information, theaccessed fingerprint template information including the fingerprintcentral nucleus and the fingerprint characteristic points of thereference fingerprint image expressed in the second coordinate system,wherein the fingerprint central nucleus of the reference fingerprintimage is a center point of adjacent pixels determined by calculating aminimum radius from a plurality of radii of curvature based on thedirection vectors of the reference fingerprint image, the adjacentpixels being adjacent to the minimum radius.
 35. The system of claim 34,wherein the fingerprint sensor, the database, and the processor areimplemented on an IC card.
 36. The system of claim 34, wherein thefingerprint sensor, the database, and the processor are implemented asstand alone components.
 37. The system of claim 36, wherein the sensor,the database, and the processor are in operative communication.
 38. Thesystem of claim 34, wherein the fingerprint sensor is implemented on astand alone IC card remote from and in operative communication with thedatabase and the processor.